-
Notifications
You must be signed in to change notification settings - Fork 107
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
WUX/MUX prototype #1421
WUX/MUX prototype #1421
Conversation
…elected WUX vs MUX mode.
…t a runtime configuration WUX/MUX switch.
… of the consumption logic in the process)
… INPC and types that need the XAML engine initialized on the thread.
Follow-up notes from @Sergio0694 in the other PR: We'll need to react to #1395 and have a separate manifest for AOT that only specifies the "latest tested OS version" to allow the Xaml Islands APIs. Also, we should hook up a linker substitution file to hard-code the UiXamlMode switch when trimming or AOT compiling. |
Wanted to clarify the comment I made in #1418. The |
src/WinRT.Runtime/Projections/NotifyCollectionChangedEventHandler.cs
Outdated
Show resolved
Hide resolved
Given this is a single, well known case, perhaps we can special case it so that when |
Honestly, some manual type identity nonsense isn't the worst idea. I'll try that out in this PR and see what I can do. |
6db6128
to
c873dd7
Compare
…elected WUX vs MUX mode. Implement the base TODO-WuxMux items that must be completed to support a runtime configuration WUX/MUX switch. Add WUX test projection and fix bug with ICommand special-casing. Inline MUX guids. Add CsWinRT SDK support Add tests for authoring components with WUX APIs (also validates some of the consumption logic in the process) Remove Debug.Breaks Change approach so WUX/MUX works for delegates Use Xaml Islands and a custom main to enable writing GTest tests with INPC and types that need the XAML engine initialized on the thread. Add AuthoringWuxComsumptionTest to the CI Change IIDOptimizer to fall back to GuidGenerator for WUX/MUX types. Fix IList ABI type to implement WUX and MUX Add breaks PR feedback and fix unit test failures. Fix configurations for new projects. Fix configuration for Windows.UI.Xaml projection
c873dd7
to
21b99e5
Compare
related: #723 |
Does it affect size when you switch to WUX mode? |
Possibly, but that's not really a concern. I can test that too though. |
The XAML codegen is the work of another team.
…________________________________
From: driver1998 ***@***.***>
Sent: Tuesday, June 11, 2024 14:44
To: microsoft/CsWinRT ***@***.***>
Cc: Dongle ***@***.***>; Comment ***@***.***>
Subject: Re: [microsoft/CsWinRT] WUX/MUX prototype (PR #1421)
Confirmed that data binding and INotifyPropertyChanged works on WUX.
But without XAML codegen it'll still be PITA to use...
image.png (view on web)<https://github.com/microsoft/CsWinRT/assets/22699485/219d097f-03dc-4a16-8641-0fb49c2bd687>
—
Reply to this email directly, view it on GitHub<#1421 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AHBRRWS4I35DJ4FOWPFDKITZG2TERAVCNFSM6AAAAABA4AM53WVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNRQGAZDCMRSHA>.
You are receiving this because you commented.Message ID: ***@***.***>
|
That's the issue I am concerned about right now, that other team might see System XAML as deprecated technology and refuse to update. Just like what happened to ARM64 .NET Framework. |
But .NET Framework does support arm64 😅 |
It does - 4.8.1 |
Implement prototype WUX/MUX support for both consumption and authoring.
The remaining TODO-WuxMux items will provide a better UX or perf but are not required for basic functionality.
Replacement for #1418 that will get CI.